GuiDesigner Programs

GuiDesigner convenience function programs
You can develop programs with simple GUIs without designing your own windows.  Your programs call convenience functions that create and operate windows containing just about any kind of grid.  GuiDesigner convenience functions let you avoid messages, window functions and grid functions, because all are hidden from your programs by the convenience functions.

With convenience functions you can write programs that create and operate simple GUIs with nothing more than simple function calls.  The GuiDesigner convenience functions,   GuiDesigner convenience function programs, and the standard GuiDesigner toolkit grids are described in a separate document.

GuiDesigner programs
Though you can develop reasonably capable programs with convenience functions, they tap only part of the power and flexibility GuiDesigner has to offer.  Eventually you'll want to design your own windows and/or grids, which are always part of standard GuiDesigner programs.

GuiDesigner programs that control GUI windows of your own design are both easy and fun to create.  You can create a basic GuiDesigner program, complete with any number of custom GUI windows that you design interactively and graphically - all without writing single line of code.

basic steps
To create a complete, functional, standard GuiDesigner program:

  You tell GuiDesigner to create a complete core GUI program.
  You interactively design a main window, or choose an existing one.
  You write code to respond to user requests when they operate the GUI.

core GuiDesigner program
All GuiDesigner programs are created equal.  They don't stay that way, but they do start out that way.  When you select F ile N ew GuiProgram from the main menu, GuiDesigner creates a GUI program:

   PROLOG - Declarations of composite types, functions, shared constants.
   Entry() - Calls initialization functions and enters main message loop.
   InitGui() - Initializes message numbers, and basic GUI variables.
   InitProgram() - Initializes your program.
   CreateWindows() - Creates, initializes, and displays the GUI windows you designed.
   InitWindows() - Initializes windows created by your program.

GuiDesigner creates this core GuiDesigner program for you, though it doesn't put anything in InitProgram() or InitWindows() because it has no way to know what your program needs to do.  After all, you're the ProgramDesigner.